Tengo un programa, que debe ejecutar solo un comando.
class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) Runtime.getRuntime().exec("adb shell input tap 0 0") } }pero me sale un error
Process: com.example.tomfo.pokerclicker, PID: 11578 java.io.IOException: Cannot run program "adb": error=13, Permission denied at java.lang.ProcessBuilder.start(ProcessBuilder.java:1050) at java.lang.Runtime.exec(Runtime.java:695) at java.lang.Runtime.exec(Runtime.java:525) at java.lang.Runtime.exec(Runtime.java:422) at com.example.tomfo.pokerclicker.MainActivity$onCreate$1.run(MainActivity.kt:14) at java.util.TimerThread.mainLoop(Timer.java:562) at java.util.TimerThread.run(Timer.java:512) Caused by: java.io.IOException: error=13, Permission denied at java.lang.UNIXProcess.forkAndExec(Native Method) at java.lang.UNIXProcess.<init>(UNIXProcess.java:133) at java.lang.ProcessImpl.start(ProcessImpl.java:132) at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) at java.lang.Runtime.exec(Runtime.java:695) at java.lang.Runtime.exec(Runtime.java:525) at java.lang.Runtime.exec(Runtime.java:422) at com.example.tomfo.pokerclicker.MainActivity$onCreate$1.run(MainActivity.kt:14) at java.util.TimerThread.mainLoop(Timer.java:562) at java.util.TimerThread.run(Timer.java:512)Aunque agregué adb a la ruta a las propiedades en Windows y puedo ejecutar comandos abd en la consola de Android Studio (pero en el comando de la consola de Android Studio no es verde). ¿Cómo resolver este problema? Este comando funciona mediante el comando de la consola de Studio
adb es una herramienta que usa en su computadora, "adb shell" abre un shell en el dispositivo (o emulador), y "adb shell command" ejecuta el comando en él.
Entonces, si desea ejecutar el comando mediante programación en el dispositivo, simplemente elimine "adb shell":
Runtime.getRuntime().exec("input tap 0 0")